/**
 * 
 */
package nl.boektrust.btsoep.shared.model;

import java.io.Serializable;
import java.util.HashSet;

/**
 * @author rao3
 *
 */
public class Company extends BTEntity implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = -2100606735305783486L;
	private String contactPersonName;
	private String contactPersonTitle;
	private String contactPersonEmail;
	private String contactPersonPhone;
	private String companyAddressStreet;
	private String companyAddressZip;
	private String companyAddressCountry;
	private String companyPhoneNumber;
	private String companyEmail;
	private PublisherTypeCode publisherTypeCode;
	private HashSet<String> assignedIsbnPrefixes;
	

	/**
	 * @param name
	 * @param url
	 * @param id
	 */
	public Company(String name, String url) {
		super(name, url);
		this.assignedIsbnPrefixes = new HashSet<String>();
		// TODO Auto-generated constructor stub
	}

	public Company() {
		this("","");
	}

	/**
	 * @return the contactPersonName
	 */
	public String getContactPersonName() {
		return contactPersonName;
	}


	/**
	 * @param contactPersonName the contactPersonName to set
	 */
	public void setContactPersonName(String contactPersonName) {
		this.contactPersonName = contactPersonName;
	}


	/**
	 * @return the contactPersonTitle
	 */
	public String getContactPersonTitle() {
		return contactPersonTitle;
	}


	/**
	 * @param contactPersonTitle the contactPersonTitle to set
	 */
	public void setContactPersonTitle(String contactPersonTitle) {
		this.contactPersonTitle = contactPersonTitle;
	}


	/**
	 * @return the contactPersonEmail
	 */
	public String getContactPersonEmail() {
		return contactPersonEmail;
	}


	/**
	 * @param contactPersonEmail the contactPersonEmail to set
	 */
	public void setContactPersonEmail(String contactPersonEmail) {
		this.contactPersonEmail = contactPersonEmail;
	}


	/**
	 * @return the contactPersonPhone
	 */
	public String getContactPersonPhone() {
		return contactPersonPhone;
	}


	/**
	 * @param contactPersonPhone the contactPersonPhone to set
	 */
	public void setContactPersonPhone(String contactPersonPhone) {
		this.contactPersonPhone = contactPersonPhone;
	}


	/**
	 * @return the companyAddressStreet
	 */
	public String getCompanyAddressStreet() {
		return companyAddressStreet;
	}


	/**
	 * @param companyAddressStreet the companyAddressStreet to set
	 */
	public void setCompanyAddressStreet(String companyAddressStreet) {
		this.companyAddressStreet = companyAddressStreet;
	}


	/**
	 * @return the companyAddressZip
	 */
	public String getCompanyAddressZip() {
		return companyAddressZip;
	}


	/**
	 * @param companyAddressZip the companyAddressZip to set
	 */
	public void setCompanyAddressZip(String companyAddressZip) {
		this.companyAddressZip = companyAddressZip;
	}


	/**
	 * @return the companyAddressCountry
	 */
	public String getCompanyAddressCountry() {
		return companyAddressCountry;
	}


	/**
	 * @param companyAddressCountry the companyAddressCountry to set
	 */
	public void setCompanyAddressCountry(String companyAddressCountry) {
		this.companyAddressCountry = companyAddressCountry;
	}


	/**
	 * @return the companyPhoneNumber
	 */
	public String getCompanyPhoneNumber() {
		return companyPhoneNumber;
	}


	/**
	 * @param companyPhoneNumber the companyPhoneNumber to set
	 */
	public void setCompanyPhoneNumber(String companyPhoneNumber) {
		this.companyPhoneNumber = companyPhoneNumber;
	}


	/**
	 * @return the companyEmail
	 */
	public String getCompanyEmail() {
		return companyEmail;
	}


	/**
	 * @param companyEmail the companyEmail to set
	 */
	public void setCompanyEmail(String companyEmail) {
		this.companyEmail = companyEmail;
	}
	
	
	/**
	 * @return the assignedIsbnPrefixes
	 */
	public HashSet<String> getAssignedIsbnPrefixes() {
		return assignedIsbnPrefixes;
	}


	public void addAssignedIsbnPrefix(String isbnPrefix) {
		this.assignedIsbnPrefixes.add(isbnPrefix);
		
	}


	/**
	 * @return the publisherTypeCode
	 */
	public PublisherTypeCode getPublisherTypeCode() {
		return publisherTypeCode;
	}


	/**
	 * @param publisherTypeCode the publisherTypeCode to set
	 */
	public void setPublisherTypeCode(PublisherTypeCode publisherTypeCode) {
		this.publisherTypeCode = publisherTypeCode;
	}

}
